package risk.control.project.utils.captcha;

import com.wf.captcha.ArithmeticCaptcha;
import com.wf.captcha.GifCaptcha;
import com.wf.captcha.SpecCaptcha;
import com.wf.captcha.base.Captcha;

import java.awt.*;


/**
 * https://github.com/ele-admin/EasyCaptcha
 */
public class CaptchaGenerator {

    //生成算术验证码
    public static ArithmeticCaptcha getArithmetic() {
        ArithmeticCaptcha captcha = new ArithmeticCaptcha(150, 80);
        //几位数运算，默认是两位
        captcha.setLen(2);
        return captcha;

    }

    //生成标准验证码
    public static SpecCaptcha getSpecCaptcha() {
        // 三个参数分别为宽、高、位数
        SpecCaptcha specCaptcha = new SpecCaptcha(150, 60, 6);
        // 设置字体
        specCaptcha.setFont(new Font("Verdana", Font.PLAIN, 35));  // 有默认字体，可以不用设置
        // 设置类型，纯数字、纯字母、字母数字混合
        specCaptcha.setCharType(Captcha.TYPE_ONLY_NUMBER);
        return specCaptcha;

    }

    //生成gif验证码
    public static GifCaptcha getGifSpecCaptcha() {
        // 三个参数分别为宽、高、位数
        GifCaptcha specCaptcha = new GifCaptcha(150, 80, 6);
        // 设置字体
        specCaptcha.setFont(new Font("Verdana", Font.PLAIN, 32));  // 有默认字体，可以不用设置
        // 设置类型，纯数字、纯字母、字母数字混合
        specCaptcha.setCharType(Captcha.TYPE_DEFAULT);
        return specCaptcha;

    }

}

